/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package escr.persistencia;

import java.io.Serializable;
import java.util.Collection;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table;

/**
 *
 * @author Aditardo
 */
@Entity
@Table(name = "tipo_poblacion")
@NamedQueries({@NamedQuery(name = "TipoPoblacion.findByTpbCod", query = "SELECT t FROM TipoPoblacion t WHERE t.tpbCod = :tpbCod"), @NamedQuery(name = "TipoPoblacion.findByTpbNombre", query = "SELECT t FROM TipoPoblacion t WHERE t.tpbNombre = :tpbNombre")})
public class TipoPoblacion implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Column(name = "TPB_COD", nullable = false)
    private Integer tpbCod;
    @Column(name = "TPB_NOMBRE", nullable = false)
    private String tpbNombre;
    @OneToMany(mappedBy = "tpbCod")
    private Collection<IndicadorPregunta> indicadorPreguntaCollection;
    @OneToMany(mappedBy = "tpbCod")
    private Collection<DatospoblaPregunta> datospoblaPreguntaCollection;

    public TipoPoblacion() {
    }

    public TipoPoblacion(Integer tpbCod) {
        this.tpbCod = tpbCod;
    }

    public TipoPoblacion(Integer tpbCod, String tpbNombre) {
        this.tpbCod = tpbCod;
        this.tpbNombre = tpbNombre;
    }

    public Integer getTpbCod() {
        return tpbCod;
    }

    public void setTpbCod(Integer tpbCod) {
        this.tpbCod = tpbCod;
    }

    public String getTpbNombre() {
        return tpbNombre;
    }

    public void setTpbNombre(String tpbNombre) {
        this.tpbNombre = tpbNombre;
    }

    public Collection<IndicadorPregunta> getIndicadorPreguntaCollection() {
        return indicadorPreguntaCollection;
    }

    public void setIndicadorPreguntaCollection(Collection<IndicadorPregunta> indicadorPreguntaCollection) {
        this.indicadorPreguntaCollection = indicadorPreguntaCollection;
    }

    public Collection<DatospoblaPregunta> getDatospoblaPreguntaCollection() {
        return datospoblaPreguntaCollection;
    }

    public void setDatospoblaPreguntaCollection(Collection<DatospoblaPregunta> datospoblaPreguntaCollection) {
        this.datospoblaPreguntaCollection = datospoblaPreguntaCollection;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (tpbCod != null ? tpbCod.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof TipoPoblacion)) {
            return false;
        }
        TipoPoblacion other = (TipoPoblacion) object;
        if ((this.tpbCod == null && other.tpbCod != null) || (this.tpbCod != null && !this.tpbCod.equals(other.tpbCod))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "escr.persistencia.TipoPoblacion[tpbCod=" + tpbCod + "]";
    }

}
